﻿namespace GoodAdmin.System;

public interface IExtraOrgService
{
    /// <summary>
    /// 分页查询组织列表
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<SqlSugarPagedList<SysOrg>> GetOrgPageList(OrgPageInput input);

    /// <summary>
    /// 新增
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task AddOrg(OrgAddInput input);

    /// <summary>
    /// 更新
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task UpdateOrg(OrgUpdateInput input);

    /// <summary>
    /// 根据组织Id删除
    /// </summary>
    /// <param name="OrgId"></param>
    /// <returns></returns>
    Task DeleteOrg(BaseIdInput input);
    
    /// <summary>
    /// 获取组织树
    /// </summary>
    /// <returns></returns>
    Task<List<SysOrg>> GetOrgTree();
}
